//Copyright 2011 - Jonathan Allen

using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using Granite.ComponentModel;

namespace Granite.Eventing
{
	///// <summary>
	///// This interface allows attaching and removing weak event handlers that listen for DictionaryChanged events
	///// </summary>
	//public interface INotifyDictionaryChangedWeak : INotifyDictionaryChanged
	//{
	//	/// <summary>
	//	/// Attach a weak event handler to this object
	//	/// </summary>
	//	/// <param name="eventHandler"></param>
	//	[SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "AddHandler")]
	//	void AddHandler(IDictionaryChangedListener eventHandler);

	//	/// <summary>
	//	/// Remove a weak event handler from this object
	//	/// </summary>
	//	/// <param name="eventHandler"></param>
	//	[SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "RemoveHandler")]
	//	void RemoveHandler(IDictionaryChangedListener eventHandler);
	//}
}
